home *** CD-ROM | disk | FTP | other *** search
/ Almathera Ten Pack 3: CDPD 3 / Almathera Ten on Ten - Disc 3: CDPD3.iso / ab20 / ab20_archive / utilities / system / intuition / shadow-4.6.readme < prev    next >
Text File  |  1995-03-17  |  3KB  |  54 lines

  1.  
  2. SHADOW.library V4.6 Released:09 Feb 1992 by David C. Navas
  3. Update to SHADOW V4.3 -- fixes 1.3 bugs and 68000 bugs (we hope).
  4.  
  5. Freely distributable only for those environments which are
  6. themselves freely distributable.
  7.  
  8. Includes shadow.library, ppipc.library, and several example programs
  9. including a class browser.
  10.  
  11. Also included is more than 160k of Documentation!
  12.  
  13. Requires AmigaDOS2.0!!!
  14.  
  15. Taken from Shadow/Docs/Introduction.doc:
  16.  
  17.           SHADOW is a concurrent-object-oriented addition to AmigaDOS.
  18.      Its principle design goal is to help standardize an extensible
  19.      environment paradigm.  It takes advantage of some of the better
  20.      AmigaDOS facilities (shared memory system, IPC ports, and fast
  21.      context switching) by internally managing much of the inter-task
  22.      communications, resource tracking, and resource allocation.
  23.  
  24.           Traditional object-oriented systems separate function
  25.      interfaces from internal data structures and manage the allocation
  26.      and access of these structures within objects.  SHADOW takes this
  27.      interface separation one step further by uncoupling the method
  28.      invocation from the parameter specification.  It also manages the
  29.      allocation of structures in a transparent manner, allowing the use
  30.      of the faster, hard-coded structure offsets of C structs.
  31.  
  32.           SHADOW was created to solve the problems which I ran into with
  33.      my first programming project -- JazzBench.  That experience taught
  34.      me that the most important thing in a co-operative multi-program
  35.      environment is flexibility.  You need to be able to change the
  36.      behaviour of EVERYTHING -as- -it- -runs-.  This lesson was the
  37.      principle reason behind the initial design of SHADOW, and the result
  38.      of that principle was the entire WatchedVariable construct. To a
  39.      lesser extent, it was also responsible for Patches.
  40.  
  41.           However, that was not the only lesson that was learned.  Trying
  42.      to locate governing control in some kind of super-server was a real
  43.      bust.  Turns out so much information had to cross through that
  44.      server to correctly manage all the resources that the server turns
  45.      into a real bottleneck.  So what I needed was a subsystem which
  46.      effectively dealt with the concurrency and shared resource management
  47.      problems.
  48.  
  49.           The other major subsystem of SHADOW supports the increased use
  50.      of more complicated data structures.  Sounds easy, but there've got
  51.      to be a dozen AVLTree functions alone, and that doesn't include
  52.      constant string management and singly-linked, priority lists, etc.
  53.  
  54.